using System;
using System.Collections.Generic;
using System.Text;

using Liberty.Domain.CaseManagement;
using Liberty.Domain.GrantManagement;

using Microsoft.VisualStudio.TestTools.UnitTesting;
//using NUnit.Framework.SyntaxHelpers;

namespace Tests.DomainTests.GrantManagement 
{
    [TestClass()]
    public class GrantAssignmentTests : Object
    {
        #region Constants
        private const string
            VOLUNTEER_NAME = "Test Volunteer",
            DELIVERY_METHOD = "Test Grant Delivery Method",
            PAYMENT_TYPE = "Visa",
            STATUS = "Active";
        private DateTime? DISPERSAL_DATE = null;

        #endregion

        #region Setup and Teardown GrantAssignmentTests
        [TestInitialize()]
        public void SetupGrantAssignmentTests()
        {
        }

        [TestCleanup()]
        public void TeardownGrantAssignmentTests()
        {
        }
        #endregion

        #region Test Methods
        [TestMethod()]
        public void TestProperties()
        {
            GrantAssignment aGrantAssignment = new GrantAssignment();
            Grant aGrant = new Grant();
            aGrant = InitializeGrant();

            CaseVolunteer aCaseVolunteer = CaseVolunteer.TestInstance();

            aGrantAssignment.Grant = aGrant;
            aGrantAssignment.CaseVolunteer = aCaseVolunteer;
            aCaseVolunteer.Name = VOLUNTEER_NAME;

            Assert.AreEqual( aGrantAssignment.Grant, aGrant );
            Assert.AreEqual( aGrantAssignment.CaseVolunteer, aCaseVolunteer );
        }
        #endregion

        #region Support Methods
        public Grant InitializeGrant()
        {
            Grant aGrant = new Grant();
            aGrant.DeliveryMethod = DeliveryMethod.TestInstance();
            aGrant.PaymentType = PaymentType.TestInstance();

            return aGrant;
        }
        #endregion

        #region Data Elements
        #endregion
        
    }
}




